import service  from '@/utils/service'

// 学生列表的接口封装
// 获取学生列表数据 
export const  getStudentData =async (root,url,params)=>{
  url = url + '?t='+ (new Date()).getTime().toString();
  const res = await service.get(url,{params:params||{} })
  if(res.data.status ===200){
     root.tableData = res.data.data;
     root.total = res.data.total;
     root.tableData.forEach(item=>{
      // 尽量不要修改接口返回的原数据
      item.sex === 1? item.sex_text = '男':item.sex_text = '女'
      item.state === '1'?(item.state_text='已入学') :item.state === '2' ? (item.state_text = '未入学'):(item.state_text = '休学中')
    })
     root.$message({message:res.data.message,type:'success'})
  }else{
     root.$message({message:res.data.message,type:'warning'})
  }
}



// 信息管理接口封装
// 获取表格数据 
export const  getInfoData =async (root,url,params)=>{
   url = url + '?t='+ (new Date()).getTime().toString();
   const res = await service.get(url,{params:params||{} })
   if(res.data.status ===200){
      root.tableDate = res.data.data;
      root.total = res.data.total;
      root.$message({message:res.data.message,type:'success'})
   }else{
      root.$message({message:res.data.message,type:'warning'})
   }
}

// export function getInfoData(root,url,params){
//    url = url + '?t='+ (new Date()).getTime().toString();
//    service.get(url,{params:params||{} }).then(res=>{
//     if(res.data.status ===200){
//       root.tableDate = res.data.data;
//       root.total = res.data.total;
//       root.$message({message:res.data.message,type:'success'})
//      }
//   }).catch(err=>{
//       throw err;
//   })
// }


// 新增 修改 接口 封装 
import qs from 'qs'
export const  changeInfoData =async (root,method,url,form,callback)=>{
  let data = qs.stringify(form)
  url = url + '?t='+ (new Date()).getTime().toString();
  const res = await service[method](url,data)
  if(res.data.status ===200){
          root.dialogFormVisible = false;
          callback(root,url)
          root.$message({message:res.data.message,type:'success'})
  }else{
    root.$message({message:res.data.message,type:'warning'})
  }
}

// 删除接口封装
export const  delInfoData =async (root,url,id,callFun)=>{
  url = url + '?t='+ (new Date()).getTime().toString();
  root.$alert('你确定要删除吗?','提示',{
    confirmButtonText:'确定',
    callback:async ()=>{
        const res = await service.delete(`${url}/${id}`)
        if(res.data.status ===200){
          callFun(root,url)
          root.$message({message:res.data.message,type:'success'})
        }else{
          root.$message({message:res.data.message,type:'warning'})
        }
      }
   })
}


// 作业列表
// 获取表格数据 
export const getWorkData =async (root,url,params,arr)=>{
  url = url + '?t='+ (new Date()).getTime().toString();
  console.log('url',url)
  const res = await service.get(url,{params:params||{} })
  if(res.data.status ===200){
     // 注意 tableDate  tableData 的名字不同
     root.tableDate = res.data.data;
     root.total = res.data.total;
     root.tableDate.map(item=>{
        arr.map(aItem=>{
          item[aItem] ? item[aItem + '_text'] = '是' : item[aItem + '_text'] = '否' 
        })
     })
     root.loading = false;
  }else{
    root.$message({message:res.data.message,type:'warning'})
  }
}
